﻿#ifndef _BSVMAIN_UI_ANALY_H
#define _BSVMAIN_UI_ANALY_H

#include <QListWidget>
#include <QTextStream>
#include <QFile>
#include <QDir>

//去掉前面的tab与空格
void trimTabSpace(QString& v);
//取出属性名与数据
bool getPropertyValue(const QString& text, QString& property, QString& value);
//type=0:Qt原生控件
//type=1:系统已有非图像窗口
//type=2:系统已有图像窗口
bool beginFlag(const QString& text, int& flag, int& type, QString& objName);
//转换成RECT类型
QRect toRect(QString r);
//结带标志检测
bool endFlag(const QString& text);
//INC指令
bool includeFlag(const QString& text, QString& fileName);
//检测是否是宏变量定义
bool checkMarcoVarDefine(const QString& cmdLine, QString& varName, QString& varValue);
//替换命令行中的宏变量
bool replaceMarcoVarValue(QString& cmdLine, const QMap<QString, QString>& mcVarDef);

//转义如\n\t\r等转成对应的字符
bool EscapeString(const QString& text, QString& value);
bool EscapeString(QString& text);
//反转义
bool DeEscapeString(const QString& text, QString& value);
bool DeEscapeString(QString& text);


//RECT转换成字符串
QString toString(QRect r);
//字符串转数字支持16进制
unsigned long long string2ULongLong(const QString& text);
unsigned long string2ULong(const QString& text);


#endif  //_BSVMAIN_UI_ANALY_H
